1. Field of the Invention
Embodiments of the disclosure relate in general to the field of computers and similar technologies, and in particular to software utilized in this field. Still more particularly, it relates to a method, system, and computer-usable medium for managing the evolution of a data model.
2. Description of the Related Art
The evolution of progressively more sophisticated information processing environments has led to a corresponding increase in the quantity, diversity and complexity of the data used by today's enterprise. As a result, it has become common in recent years for companies to use data modeling to graphically model the composition, relationships and interdependencies of their business data. The resulting data models can be used for a variety of purposes, from high-level conceptual models to physical data models. However, the effectiveness of such models is highly dependent upon the integrity of their underlying business data elements.
Even simple changes to an information model can have unexpected and far-reaching affect on data compatibility, access methods, and content alignment. These, and other consequences, can have a negative impact on existing systems, application performance, business processes, and the company's bottom line. As a result, there is a corresponding reluctance to make information model changes due to fear of losing backward compatibility and destabilizing business operations. However, the need to streamline business operations, the quest for more effective business intelligence, and the implementation of new or reoriented business processes inevitably requires making changes to their associated business data. Failure to do so in a timely and effective manner can result in delayed system upgrades, sub-optimal solutions, and failure to meet business goals.
Accordingly, businesses need the ability to make safe and decisive changes to their business data models in support of data implementations, consolidation, migration, and management. Equally important, they need to efficiently record, track and manage the evolution of business data models while also being able to agilely support the implementation of the resulting changes. Current approaches to managing changes to business data models include making modifications and then saving the modified model as a new version. However, such approaches create multiple model management issues. First, there is a loss of granularity, making it difficult to determine what was changed, and when. Second, the ability to track change orders, which can be crucial for after-the-fact analysis, is limited. Third, correlating and synchronizing multiple model versions, as well as branched-off versions, becomes more difficult as changes continue to accumulate over time. Furthermore, understanding the reasoning behind the evolution of the model becomes more and more challenging. In addition to efficiently recording and managing data models as they evolve, businesses need to be able to predict the affect of the changes, as well as iteratively roll-back the model to the last known good state for recovery. These abilities would additionally enable capabilities such as change programmability, automated model simulations on programmed changes, and model simulation replays. In view of the foregoing, it would be advantageous for a businesses to gain a more thorough and complete understanding of their information assets.